Celerity Function

private function Celerity(y, B0, alpha, slope, n) result(c)

returns the celerity (m/s)

Reference:

Todini, E. (2007) A mass conservative and water storage consistent variable parameter Muskingum-Cunge approach, Hydrol. Earth Syst. Sci.,1645-1659.

Arguments

Type IntentOptional Attributes Name
real(kind=float), intent(in) :: y

water stage (m)

real(kind=float), intent(in) :: B0

bottom width, = 0 for triangular section (m)

real(kind=float), intent(in) :: alpha

angle formed by dykes over a horizontal plane [deg)

real(kind=float), intent(in) :: slope

bed slope (m/m)

real(kind=float), intent(in) :: n

manning riughness coefficient (s m^(-1/3))

Return Value real(kind=float)


Variables

Type Visibility Attributes Name Initial
real(kind=float), public :: A

wetted area (m2)

real(kind=float), public :: B

top width (m)

real(kind=float), public :: P

wetted perimeter (m)

real(kind=float), public :: salpha

sine of angle alpha


Source Code

FUNCTION Celerity &
( y, B0, alpha, slope, n ) &
RESULT (c)


IMPLICIT NONE

! Function arguments
! Arguments with intent(in):
REAL (KIND = float), INTENT (IN) :: y !!water stage (m)
REAL (KIND = float), INTENT (IN) :: B0 !!bottom width, = 0 for  triangular  section (m)
REAL (KIND = float), INTENT (IN) :: alpha !!angle formed by dykes over a horizontal plane [deg)
REAL (KIND = float), INTENT (IN) :: slope !!bed slope (m/m)
REAL (KIND = float), INTENT (IN) :: n !!manning riughness coefficient (s m^(-1/3))

! Arguments with intent(OUT):
REAL (KIND = float) :: c

!local declaration:
REAL (KIND = float) :: A !!wetted area (m2)
REAL (KIND = float) :: P !!wetted perimeter (m)
REAL (KIND = float) :: B !!top width (m)
REAL (KIND = float) :: salpha !!sine of angle alpha

!------------end of declaration------------------------------------------------

A = WettedArea ( y, B0, alpha )
P = WettedPerimeter ( y, B0, alpha )
B = TopWidth ( y, B0, alpha )
salpha = SIN(alpha*degToRad)

c = 5./3. * slope**0.5 / n * A**(2./3.) / P**(2./3.) * &
    ( 1. - 4./5. * A / (B * P * salpha))

RETURN
END FUNCTION Celerity